package com.senlingspace.payment.douyin.bean.request;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.senlingspace.payment.douyin.DouyinFunctionEnum;

import java.io.Serializable;

/**
 * 抖音请求基类
 *
 * @author lebronjames
 * @date 2024/07/22
 */
public interface DouyinRequest<T> extends Serializable {

    /**
     * 对应接口 URL
     *
     * @return {@link DouyinFunctionEnum }
     */
    @JsonIgnore
    DouyinFunctionEnum getFunction();

    /**
     * 请求内容
     *
     * @return {@link String }
     */
    @JsonIgnore
    String getBody();

    /**
     * 响应类型
     *
     * @return {@link Class<T> }
     */
    @JsonIgnore
    Class<T> getResponseType();

}
